const { Users } = require('../utils/db')

// 检查该用户是否存在
const findUser = (username) => {
  return Users.findOne({ username })  // 如果返回null 则没有找到 如果有返回值则是以存在
}

// 注册账号
const register = ({ username, password }) => {
  const user = new Users({ username, password })
  return user.save()  // 返回的是一个Promise 对象 注册成功是你注册的信息 注册失败返回的是null
}

// 获取到所有的用户
const findAllUsers = () => {
  return Users.find({}, 'username').sort({ _id: -1 })  // 查找所有的Users 中的username字段，并且按照id倒序排序
}

// 制作分页功能
const pagination = async (currentPage, size) => {
  return Users.find({}, 'username').skip((currentPage - 1) * size).limit(size * 1).sort({ _id: -1 })
}

// 删除操作
const removeUser = (username) => {
  return Users.remove({ username })
}

module.exports = {
  register,
  findUser,
  findAllUsers,
  pagination,
  removeUser
}